<?php
$begintime = microtime(true);
require('lib/templatepower.class.php');
require('lib/mysql.class.php');
require('lib/functions.php');
require('conf.php');

$tpl = new TemplatePower('index.htm');
$tpl->Prepare();

/*
 *  Блок запросов к базе данных
*/

$db->Query('SELECT `eng_words`.`name`, 
			(SELECT SUM(`eng_assign`.`count`) 
			FROM `eng_assign` 
			WHERE `eng_assign`.`word_id` = `eng_words`.`id`) AS `cnt` 
			FROM `eng_words` 
			ORDER BY `cnt` DESC 
			LIMIT 0, 5');
$top_words = $db->RecordsArray(MYSQL_ASSOC); // Вывод пяти самых популярных слов

$top_word = $top_words[0]['name']; // Самое популярное слово
$total_pages = $db->QuerySingleValue('SELECT COUNT(`id`) FROM `eng_main`'); // Общее количество добавленных ссылок
$words_uniq = $db->QuerySingleValue('SELECT COUNT(`id`) FROM `eng_words`'); // Количество уникальных слов
$words_total = $db->QuerySingleValue('SELECT SUM(`count`) FROM `eng_assign`'); // Общее количество слов
$word_avg = ceil($words_total/$total_pages); // Среднее количество слов на странице

// Вывод информации о пяти последних добавленных страницах
$db->Query('SELECT `url`, `id`, UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(`dateadd`) AS `addtime`
			FROM `eng_main` 
			ORDER BY `id` DESC 
			LIMIT 0, 5');

/*
 *  Блок вывода информации на экран
*/

// Недавно добавленные страницы
while (!$db->EndOfSeek()) 
{
	$last = $db->Row();
	$backtime = numeralDate($last->addtime); // Показываем время, прошедшее с добавления в человеческом формате
	$back = $backtime[0].' '.$backtime[1];
	
	$tpl->newBlock('list_pages');
	$tpl->assign('url_name', cutAndSafe($last->url, 65));
	$tpl->assign('url_id', $last->id);
	$tpl->assign('time_sub', $back);
}
// Самые популярные слова
for ($i=0; $i<5; $i++)
{
	$tpl->newBlock('words_list');
	$tpl->assign('word_name', $top_words[$i]['name']);
	$tpl->assign('count', $top_words[$i]['cnt']);
}
// Общая статистика
$tpl->newBlock('all_stat');
$tpl->assign('count_pages', $total_pages); // Количество ссылок
$tpl->assign('count_words', $words_uniq); // Уникальных слов
$tpl->assign('count_all', $words_total); // Всего слов
$tpl->assign('word_avg', $word_avg); // Среднее количество слов
$tpl->assign('high_word', $top_word); // Самое популярное слово

// Вывод всего на экран
$tpl->printToScreen();
$endtime = microtime(true) - $begintime;
echo $endtime;
?>